package com.ymttest.database.sharding.db.sharding.model;

import java.math.BigDecimal;
import java.util.Date;

public class OrderDetailSubPo {
    /**
     * id BIGINT(19) 必填<br>
     * 主键Id
     */
    private Long id;

    /**
     * order_detail_id BIGINT(19) 必填<br>
     * order_detail表中的order_detail_id
     */
    private Long orderDetailId;

    /**
     * order_id BIGINT(19)<br>
     * 订单号
     */
    private Long orderId;

    /**
     * catalog_id VARCHAR(50)<br>
     * 规格ID
     */
    private String catalogId;

    /**
     * sub_catalog_id VARCHAR(50) 必填<br>
     * 子规格Id
     */
    private String subCatalogId;

    /**
     * first_category_id INTEGER(10) 必填<br>
     * 一级类目
     */
    private Integer firstCategoryId;

    /**
     * second_category_id INTEGER(10) 必填<br>
     * 二级类目
     */
    private Integer secondCategoryId;

    /**
     * third_category_id INTEGER(10) 必填<br>
     * 三级类目
     */
    private Integer thirdCategoryId;

    /**
     * product_count INTEGER(10) 必填<br>
     * 商品数量
     */
    private Integer productCount;

    /**
     * title VARCHAR(1000)<br>
     * 商品标题
     */
    private String title;

    /**
     * record_no VARCHAR(100)<br>
     * 备案号
     */
    private String recordNo;

    /**
     * sku VARCHAR(500)<br>
     * sku
     */
    private String sku;

    /**
     * product_price DECIMAL(18,2) 必填<br>
     * 商品成交价
     */
    private BigDecimal productPrice;

    /**
     * original_price DECIMAL(18,2) 必填<br>
     * 商品原价
     */
    private BigDecimal originalPrice;

    /**
     * product_code VARCHAR(130)<br>
     * 条形码
     */
    private String productCode;

    /**
     * freight DECIMAL(18,2) 默认值[0.00] 必填<br>
     * 运费
     */
    private BigDecimal freight;

    /**
     * ymt_coupon_amount DECIMAL(18,2) 默认值[0.00] 必填<br>
     * 分摊后平台优惠券金额
     */
    private BigDecimal ymtCouponAmount;

    /**
     * seller_coupon_amount DECIMAL(18,2) 默认值[0.00] 必填<br>
     * 分摊后买手优惠券金额
     */
    private BigDecimal sellerCouponAmount;

    /**
     * promotion_amount DECIMAL(18,2) 默认值[0.00] 必填<br>
     * 买手促销优惠金额
     */
    private BigDecimal promotionAmount;

    /**
     * ymt_promotion_amount DECIMAL(18,2)<br>
     * 平台促销优惠金额
     */
    private BigDecimal ymtPromotionAmount;

    /**
     * discount DECIMAL(18,2) 默认值[0.00] 必填<br>
     * 分摊后折扣金额
     */
    private BigDecimal discount;

    /**
     * thirdparty_discount DECIMAL(18,2) 默认值[0.00] 必填<br>
     * 分摊后第三方优惠金额
     */
    private BigDecimal thirdpartyDiscount;

    /**
     * add_time TIMESTAMP(19) 默认值[CURRENT_TIMESTAMP] 必填<br>
     * 新增时间
     */
    private Date addTime;

    /**
     * update_time TIMESTAMP(19) 默认值[CURRENT_TIMESTAMP] 必填<br>
     * 更新时间
     */
    private Date updateTime;
    
    /**
     * 总税费
     */
    private BigDecimal totalTaxFee;
    
    /**
     * 商品图片url
     */
    private String pictureUrl;
    
    /**
     * 商品属性
     */
    private String propertyInfo;
    
    /**
     * 海关实际税率(小数点后最多6位）
     */
    private BigDecimal customsTaxRate;
    
    /**
     * 海关实际税费(小数点后最多两位）
     */
    private BigDecimal customsTaxFee;
    
    /**
     * 供应商名称
     */
    private String goodsSupplier;
    
    private Long integral;
    
    private BigDecimal integralDeductionAmount;
    
    /**
     * 区域折扣金额
     */
    private BigDecimal regionDiscountAmount;
    
    /**
     * 预售立减金额
     */
    private BigDecimal bookingPromotionAmount;

    /**
     * id BIGINT(19) 必填<br>
     * 获得 主键Id
     */
    public Long getId() {
        return id;
    }

    /**
     * id BIGINT(19) 必填<br>
     * 设置 主键Id
     */
    public void setId(Long id) {
        this.id = id;
    }

    /**
     * order_detail_id BIGINT(19) 必填<br>
     * 获得 order_detail表中的order_detail_id
     */
    public Long getOrderDetailId() {
        return orderDetailId;
    }

    /**
     * order_detail_id BIGINT(19) 必填<br>
     * 设置 order_detail表中的order_detail_id
     */
    public void setOrderDetailId(Long orderDetailId) {
        this.orderDetailId = orderDetailId;
    }

    /**
     * order_id BIGINT(19)<br>
     * 获得 订单号
     */
    public Long getOrderId() {
        return orderId;
    }

    /**
     * order_id BIGINT(19)<br>
     * 设置 订单号
     */
    public void setOrderId(Long orderId) {
        this.orderId = orderId;
    }

    /**
     * catalog_id VARCHAR(50)<br>
     * 获得 规格ID
     */
    public String getCatalogId() {
        return catalogId;
    }

    /**
     * catalog_id VARCHAR(50)<br>
     * 设置 规格ID
     */
    public void setCatalogId(String catalogId) {
        this.catalogId = catalogId == null ? null : catalogId.trim();
    }

    /**
     * sub_catalog_id VARCHAR(50) 必填<br>
     * 获得 子规格Id
     */
    public String getSubCatalogId() {
        return subCatalogId;
    }

    /**
     * sub_catalog_id VARCHAR(50) 必填<br>
     * 设置 子规格Id
     */
    public void setSubCatalogId(String subCatalogId) {
        this.subCatalogId = subCatalogId == null ? null : subCatalogId.trim();
    }

    /**
     * first_category_id INTEGER(10) 必填<br>
     * 获得 一级类目
     */
    public Integer getFirstCategoryId() {
        return firstCategoryId;
    }

    /**
     * first_category_id INTEGER(10) 必填<br>
     * 设置 一级类目
     */
    public void setFirstCategoryId(Integer firstCategoryId) {
        this.firstCategoryId = firstCategoryId;
    }

    /**
     * second_category_id INTEGER(10) 必填<br>
     * 获得 二级类目
     */
    public Integer getSecondCategoryId() {
        return secondCategoryId;
    }

    /**
     * second_category_id INTEGER(10) 必填<br>
     * 设置 二级类目
     */
    public void setSecondCategoryId(Integer secondCategoryId) {
        this.secondCategoryId = secondCategoryId;
    }

    /**
     * third_category_id INTEGER(10) 必填<br>
     * 获得 三级类目
     */
    public Integer getThirdCategoryId() {
        return thirdCategoryId;
    }

    /**
     * third_category_id INTEGER(10) 必填<br>
     * 设置 三级类目
     */
    public void setThirdCategoryId(Integer thirdCategoryId) {
        this.thirdCategoryId = thirdCategoryId;
    }

    /**
     * product_count INTEGER(10) 必填<br>
     * 获得 商品数量
     */
    public Integer getProductCount() {
        return productCount;
    }

    /**
     * product_count INTEGER(10) 必填<br>
     * 设置 商品数量
     */
    public void setProductCount(Integer productCount) {
        this.productCount = productCount;
    }

    /**
     * title VARCHAR(1000)<br>
     * 获得 商品标题
     */
    public String getTitle() {
        return title;
    }

    /**
     * title VARCHAR(1000)<br>
     * 设置 商品标题
     */
    public void setTitle(String title) {
        this.title = title == null ? null : title.trim();
    }

    /**
     * record_no VARCHAR(100)<br>
     * 获得 备案号
     */
    public String getRecordNo() {
        return recordNo;
    }

    /**
     * record_no VARCHAR(100)<br>
     * 设置 备案号
     */
    public void setRecordNo(String recordNo) {
        this.recordNo = recordNo == null ? null : recordNo.trim();
    }

    /**
     * sku VARCHAR(500)<br>
     * 获得 sku
     */
    public String getSku() {
        return sku;
    }

    /**
     * sku VARCHAR(500)<br>
     * 设置 sku
     */
    public void setSku(String sku) {
        this.sku = sku == null ? null : sku.trim();
    }

    /**
     * product_price DECIMAL(18,2) 必填<br>
     * 获得 商品成交价
     */
    public BigDecimal getProductPrice() {
        return productPrice;
    }

    /**
     * product_price DECIMAL(18,2) 必填<br>
     * 设置 商品成交价
     */
    public void setProductPrice(BigDecimal productPrice) {
        this.productPrice = productPrice;
    }

    /**
     * original_price DECIMAL(18,2) 必填<br>
     * 获得 商品原价
     */
    public BigDecimal getOriginalPrice() {
        return originalPrice;
    }

    /**
     * original_price DECIMAL(18,2) 必填<br>
     * 设置 商品原价
     */
    public void setOriginalPrice(BigDecimal originalPrice) {
        this.originalPrice = originalPrice;
    }

    /**
     * product_code VARCHAR(130)<br>
     * 获得 条形码
     */
    public String getProductCode() {
        return productCode;
    }

    /**
     * product_code VARCHAR(130)<br>
     * 设置 条形码
     */
    public void setProductCode(String productCode) {
        this.productCode = productCode == null ? null : productCode.trim();
    }

    /**
     * freight DECIMAL(18,2) 默认值[0.00] 必填<br>
     * 获得 运费
     */
    public BigDecimal getFreight() {
        return freight;
    }

    /**
     * freight DECIMAL(18,2) 默认值[0.00] 必填<br>
     * 设置 运费
     */
    public void setFreight(BigDecimal freight) {
        this.freight = freight;
    }

    /**
     * ymt_coupon_amount DECIMAL(18,2) 默认值[0.00] 必填<br>
     * 获得 分摊后平台优惠券金额
     */
    public BigDecimal getYmtCouponAmount() {
        return ymtCouponAmount;
    }

    /**
     * ymt_coupon_amount DECIMAL(18,2) 默认值[0.00] 必填<br>
     * 设置 分摊后平台优惠券金额
     */
    public void setYmtCouponAmount(BigDecimal ymtCouponAmount) {
        this.ymtCouponAmount = ymtCouponAmount;
    }

    /**
     * seller_coupon_amount DECIMAL(18,2) 默认值[0.00] 必填<br>
     * 获得 分摊后买手优惠券金额
     */
    public BigDecimal getSellerCouponAmount() {
        return sellerCouponAmount;
    }

    /**
     * seller_coupon_amount DECIMAL(18,2) 默认值[0.00] 必填<br>
     * 设置 分摊后买手优惠券金额
     */
    public void setSellerCouponAmount(BigDecimal sellerCouponAmount) {
        this.sellerCouponAmount = sellerCouponAmount;
    }

    /**
     * promotion_amount DECIMAL(18,2) 默认值[0.00] 必填<br>
     * 获得 买手促销优惠金额
     */
    public BigDecimal getPromotionAmount() {
        return promotionAmount;
    }

    /**
     * promotion_amount DECIMAL(18,2) 默认值[0.00] 必填<br>
     * 设置 买手促销优惠金额
     */
    public void setPromotionAmount(BigDecimal promotionAmount) {
        this.promotionAmount = promotionAmount;
    }

    /**
     * ymt_promotion_amount DECIMAL(18,2)<br>
     * 获得 平台促销优惠金额
     */
    public BigDecimal getYmtPromotionAmount() {
        return ymtPromotionAmount;
    }

    /**
     * ymt_promotion_amount DECIMAL(18,2)<br>
     * 设置 平台促销优惠金额
     */
    public void setYmtPromotionAmount(BigDecimal ymtPromotionAmount) {
        this.ymtPromotionAmount = ymtPromotionAmount;
    }

    /**
     * discount DECIMAL(18,2) 默认值[0.00] 必填<br>
     * 获得 分摊后折扣金额
     */
    public BigDecimal getDiscount() {
        return discount;
    }

    /**
     * discount DECIMAL(18,2) 默认值[0.00] 必填<br>
     * 设置 分摊后折扣金额
     */
    public void setDiscount(BigDecimal discount) {
        this.discount = discount;
    }

    /**
     * thirdparty_discount DECIMAL(18,2) 默认值[0.00] 必填<br>
     * 获得 分摊后第三方优惠金额
     */
    public BigDecimal getThirdpartyDiscount() {
        return thirdpartyDiscount;
    }

    /**
     * thirdparty_discount DECIMAL(18,2) 默认值[0.00] 必填<br>
     * 设置 分摊后第三方优惠金额
     */
    public void setThirdpartyDiscount(BigDecimal thirdpartyDiscount) {
        this.thirdpartyDiscount = thirdpartyDiscount;
    }

    /**
     * add_time TIMESTAMP(19) 默认值[CURRENT_TIMESTAMP] 必填<br>
     * 获得 新增时间
     */
    public Date getAddTime() {
        return addTime;
    }

    /**
     * add_time TIMESTAMP(19) 默认值[CURRENT_TIMESTAMP] 必填<br>
     * 设置 新增时间
     */
    public void setAddTime(Date addTime) {
        this.addTime = addTime;
    }

    /**
     * update_time TIMESTAMP(19) 默认值[CURRENT_TIMESTAMP] 必填<br>
     * 获得 更新时间
     */
    public Date getUpdateTime() {
        return updateTime;
    }

    /**
     * update_time TIMESTAMP(19) 默认值[CURRENT_TIMESTAMP] 必填<br>
     * 设置 更新时间
     */
    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public BigDecimal getTotalTaxFee() {
		return totalTaxFee;
	}

	public void setTotalTaxFee(BigDecimal totalTaxFee) {
		this.totalTaxFee = totalTaxFee;
	}

	public String getPictureUrl() {
		return pictureUrl;
	}

	public void setPictureUrl(String pictureUrl) {
		this.pictureUrl = pictureUrl;
	}

	public String getPropertyInfo() {
		return propertyInfo;
	}

	public void setPropertyInfo(String propertyInfo) {
		this.propertyInfo = propertyInfo;
	}

	public BigDecimal getCustomsTaxRate() {
		return customsTaxRate;
	}

	public void setCustomsTaxRate(BigDecimal customsTaxRate) {
		this.customsTaxRate = customsTaxRate;
	}

	public BigDecimal getCustomsTaxFee() {
		return customsTaxFee;
	}

	public void setCustomsTaxFee(BigDecimal customsTaxFee) {
		this.customsTaxFee = customsTaxFee;
	}

	public String getGoodsSupplier() {
		return goodsSupplier;
	}

	public void setGoodsSupplier(String goodsSupplier) {
		this.goodsSupplier = goodsSupplier;
	}

	public Long getIntegral() {
		return integral;
	}

	public void setIntegral(Long integral) {
		this.integral = integral;
	}

	public BigDecimal getIntegralDeductionAmount() {
		return integralDeductionAmount;
	}

	public void setIntegralDeductionAmount(BigDecimal integralDeductionAmount) {
		this.integralDeductionAmount = integralDeductionAmount;
	}

	public BigDecimal getRegionDiscountAmount() {
		return regionDiscountAmount;
	}

	public void setRegionDiscountAmount(BigDecimal regionDiscountAmount) {
		this.regionDiscountAmount = regionDiscountAmount;
	}

	public BigDecimal getBookingPromotionAmount() {
		return bookingPromotionAmount;
	}

	public void setBookingPromotionAmount(BigDecimal bookingPromotionAmount) {
		this.bookingPromotionAmount = bookingPromotionAmount;
	}

	@Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", id=").append(id);
        sb.append(", orderDetailId=").append(orderDetailId);
        sb.append(", orderId=").append(orderId);
        sb.append(", catalogId=").append(catalogId);
        sb.append(", subCatalogId=").append(subCatalogId);
        sb.append(", firstCategoryId=").append(firstCategoryId);
        sb.append(", secondCategoryId=").append(secondCategoryId);
        sb.append(", thirdCategoryId=").append(thirdCategoryId);
        sb.append(", productCount=").append(productCount);
        sb.append(", title=").append(title);
        sb.append(", recordNo=").append(recordNo);
        sb.append(", sku=").append(sku);
        sb.append(", productPrice=").append(productPrice);
        sb.append(", originalPrice=").append(originalPrice);
        sb.append(", productCode=").append(productCode);
        sb.append(", freight=").append(freight);
        sb.append(", ymtCouponAmount=").append(ymtCouponAmount);
        sb.append(", sellerCouponAmount=").append(sellerCouponAmount);
        sb.append(", promotionAmount=").append(promotionAmount);
        sb.append(", ymtPromotionAmount=").append(ymtPromotionAmount);
        sb.append(", discount=").append(discount);
        sb.append(", thirdpartyDiscount=").append(thirdpartyDiscount);
        sb.append(", addTime=").append(addTime);
        sb.append(", updateTime=").append(updateTime);
        sb.append(", totalTaxFee=").append(this.totalTaxFee);
        sb.append(", pictureUrl=").append(this.pictureUrl);
        sb.append(", propertyInfo=").append(this.propertyInfo);
        sb.append(", customsTaxFee=").append(this.customsTaxFee);
        sb.append(", customsTaxRate=").append(this.customsTaxRate);
        sb.append(", goodsSupplier=").append(this.goodsSupplier);
        sb.append(", integral=").append(this.integral);
        sb.append(", integralDeductionAmount=").append(this.integralDeductionAmount);
        
        sb.append(", regionDiscountAmount=").append(this.regionDiscountAmount);
        
        sb.append(", bookingPromotionAmount=").append(this.bookingPromotionAmount);
        
        sb.append("]");
        return sb.toString();
    }
}